Exact Graph Coloring Algorithms of Getting Partial and All Best Solutions
نویسندگان
چکیده
Designing effective exact algorithms for graph coloring problem is still an interesting topic. Instead of getting only one best solution, two exact graph coloring algorithms, PexaCol (Partial best solutions Exact graph Coloring algorithm) and AexaCol (All best solutions Exact graph Coloring algorithm), have been proposed, which are able to obtain a best solution subset and all best solutions respectively. Based on TexaCol (Total solutions Exact graph Coloring algorithm) which is capable of getting all coloring solution subsets for each subgraph, these two algorithms utilize the backtracking method, in which they only choose the best solution subset each step to continue the coloring until partial or all best solutions are obtained. The result analysis shows that PexaCol and AexaCol can deal with larger graphs than TexaCol and especially, AexaCol runs much faster than TexaCol and the solver Gurobi to get all best solutions. Graph coloring problem is a well-known traditional NPcomplete problem, which has been extensively researched and has great significance to improve the efficiency for some industrial applications. Although there have been a lot of works on it up to now, no methods can make sure of obtaining the best solution exactly for large graphs (e.g., graphs with several thousand nodes) in an acceptable time. On the other hand, instead of getting only one best solution, very few works engage in getting multiple or all best coloring solutions which are obviously much difficult. Therefore, it is still necessary to explore new methods of graph coloring from different perspectives. Generally, there are two kinds of methods for coloring a graph: the exact methods and the heuristic methods. The exact methods are capable of attaining the best solution for a given graph while the graph’s size is small (Malaguti, Monaci, and Toth 2011; Mehrotra and Trick 1996), however, it is really limited to solve practical problems which are often modeled as larger graphs. The heuristic methods can deal with much larger graphs, nevertheless, they often cannot get the best solution. So far, in order to solve graph coloring problem, a lot of heuristic algorithms have been proposed while there are very few exact algorithms. There have already been some studies on graph coloring by analyzing the graph structure or by decomposing the graphs. In (Rao 2004), the graph coloring is conducted using the split decomposition tree, in which a graph is recursively partitioned into smaller graphs until they cannot be split anymore. Then, after coloring the prime graphs which cannot be split, the solutions are combined gradually to get the solutions for all the graph. In (Bhasker and Samad 1991), the authors research the clique-partitioning for a graph based on the principle that the graph coloring and the cliquepartitioning are equivalent to some extent. Two methods are presented to partition cliques, which perform better in runtime than some efficient graph coloring algorithms. In (Lucet, Mendes, and Moukrim 2006), an exact graph coloring algorithm is proposed by linearly decomposing a graph, which can run faster than other exact algorithms when the linearwidth is small. The graph is dynamically decomposed into subgraphs and the corresponding boundaries between these subgraphs. Then the coloring results can be obtained by analyzing different coloring cases from these boundaries. Moreover, there are plenty of papers that work on the chromatic polynomial and the number of best solutions. In (Read 1968), the traditional method called the deletioncontraction is presented to get the chromatic polynomial which utilizes the characteristic of chromatic polynomial to do the operations to the graph. In (Lin 1993), an approximation algorithm is proposed to calculate the chromatic polynomial after obtaining its upper bound and lower bound, which has good performance in time complexity. Our work is based on TexaCol in our previous work (Martin 2010), which can get all graph coloring solutions as well as the chromatic polynomial. TexaCol is a graph-structurebased algorithm, in which the graph is decomposed into maximal cliques, and the relationship between these maximal cliques is analyzed to get all coloring solutions. We improve this work in this paper to propose two exact graph coloring algorithms, which can get multiple best solutions or all best solutions. Our contributions are as follows: • Based on TexaCol, an algorithm called PexaCol has been designed to get partial best solutions (see section PexaCol). Each step, instead of dealing with all solution subsets, PexaCol utilizes backtracking method to choose only the best solution subset for subgraphs to calculate until a best solution subset for all the graph is obtained. • Based on PexaCol, we proposed another algorithm called AexaCol which is capable of getting all best solutions for a graph (see section AexaCol). Different from PexaCol, this algorithm will not stop the calculation until all best solutions are acquired. • By calculating a lot of graph instances, the performance of these algorithms has been evaluated (see section Result analysis). Result analysis shows that PexaCol and AexaCol are able to deal with larger graphs and can run faster than TexaCol. In addition, AexaCol can run much faster than the famous solver Gurobi in getting all best solutions.
منابع مشابه
Solving a nurse rostering problem considering nurses preferences by graph theory approach
Nurse Rostering Problem (NRP) or the Nurse Scheduling Problem (NSP) is a complex scheduling problem that affects hospital personnel on a daily basis all over the world and is known to be NP-hard.The problem is to decide which members of a team of nurses should be on duty at any time, during a rostering period of, typically, one month.It is very important to efficiently utilize time and effort, ...
متن کاملAlgorithms for Finding Distance-Edge-Colorings of Graphs
For a bounded integer , we wish to color all edges of a graph G so that any two edges within distance have different colors. Such a coloring is called a distance-edge-coloring or an -edge-coloring of G. The distance-edge-coloring problem is to compute the minimum number of colors required for a distance-edge-coloring of a given graph G. A partial k-tree is a graph with tree-width bounded by a f...
متن کاملAutomatic Service Composition Based on Graph Coloring
Web services as independent software components are published on the Internet by service providers and services are then called by users’ request. However, in many cases, no service alone can be found in the service repository that could satisfy the applicant satisfaction. Service composition provides new components by using an interactive model to accelerate the programs. Prior to service comp...
متن کاملالگوریتم ژنتیک با جهش آشوبی هوشمند و ترکیب چندنقطهای مکاشفهای برای حل مسئله رنگآمیزی گراف
Graph coloring is a way of coloring the vertices of a graph such that no two adjacent vertices have the same color. Graph coloring problem (GCP) is about finding the smallest number of colors needed to color a given graph. The smallest number of colors needed to color a graph G, is called its chromatic number. GCP is a well-known NP-hard problems and, therefore, heuristic algorithms are usually...
متن کاملAutomatic Service Composition Based on Graph Coloring
Web services as independent software components are published on the Internet by service providers and services are then called by users’ request. However, in many cases, no service alone can be found in the service repository that could satisfy the applicant satisfaction. Service composition provides new components by using an interactive model to accelerate the programs. Prior to service comp...
متن کامل